1. Field of the Invention
The present invention relates to a spline interpolation method, and more particularly, to a spline interpolation method of effecting an approximate interpolation of a spline curve based on preset points among a sequence of given points.
2. Description of the Related Art
An interpolation us a cubic spline curve is widely used as a method of subjecting a sequence of points to interpolation by using a smooth curve.
The prior art spline interpolation is effected by the following method:
(ia) all of the specified points of the sequence are received;
(iia) simultaneous equations containing all of the sequence point data are created and solved, to derive the first-derivative vector at each point. This is effected by deriving the inverse matrix of a matrix equation described later;
(iiia) under a condition that the first-derivative vector at the second point and the first-derivative vector at the starting point derived as described above are used, and that the positions of a given starting point and a second point are set, the following cubic equation connecting the starting point and the second point is derived, and the calculation is effected to derive the respective positions, thus effecting the interpolation while the parameter t of the equation is changed from 0 to 1, EQU P(t)=K.sub.4 t.sup.3 +K.sub.3 t.sup.2 +K.sub.2 t+K.sub.1
(where P(t) denotes a vector representing the position, and K.sub.4, K.sub.3, K.sub.2 and K.sub.1 denote coefficient vectors); and
(iva) a cubic equation connecting the second and third points is derived in the same manner as described above.
Another method is effected as follows:
(ib) all of the specified points of the sequence are received;
(iib) simultaneous equations containing all of the sequence point data are created and solved, to derive the first-derivative vector at the starting point and the first-derivative vector at a second point, and derive the second-derivative vector at the starting point based on the above first-derivative vectors and the positions of the first and second points;
(iiib) a cubic equation, which is the same as described above and connects the starting point and the second point, is derived with the first-derivative vector and the second-derivative vector at the starting point derived as described above and used as the extreme point condition, and the calculation is effected to derive respective positions, thus effecting the interpolation while the parameter t of the equation is changed from 0 to 1; and
(ivb) a cubic equation connecting the second and third points is derived with the first- and second-derivative vectors of the second point in the cubic equation as described above, and the calculation then effected in the same manner as described above to derive the respective positions, thus effecting the interpolation while the parameter t of the equation is changed from 0 to 1.
In the above-described methods, the calculations are repeatedly effected for the third and fourth points, the fourth and fifth points, and so on, to effect the interpolation of the cubic equation for all of the specified sequential points so that the spline interpolation for all the sequential points can be effected.
In the above methods, however, all the specified sequential points must be received and the calculation therefor effected, and accordingly, the following problems arise:
(a) it is impossible to limitlessly increase the number of specified points;
(b) a very large amount of matrix calculations must be effected when the number of specified points is large, and thus a large memory capacity and a long calculation time are required;
(c) if the matrix calculation is not effected with a high precision, the spline curve may become excessively separated from the succeeding specified points (deviated or oscillated); and
(d) when the matrix calculation is effected on the programmer side, it is practically impossible to manually effect the calculation if the number of the specified points becomes equal to or larger than four, and thus an additional computing device becomes necessary.